package com.scada.dao;

import java.util.List;
import java.util.Map;

import com.scada.model.bean.Dictionary;
import com.scada.model.result.PageInfo;



/**
 * 
 * @ClassName: DictionaryMapper 
 * @Description: 字典类型Dao
 * @author: yangyuan
 * @date: 2016年12月7日 下午3:48:26
 */
public interface DictionaryDao {
	/**
	 * 
	 * @Title: deleteByPrimaryKey 
	 * @Description: 根据ID批量删除字典类型
	 * @param map
	 * @return
	 * @return: int
	 * @author: yangyuan 
	 * @date: 2016年12月7日 下午3:48:02
	 */
    public int deleteByPrimaryKey(Map<String, Object> map);
    
    /**
     * 
     * @Title: insertSelective 
     * @Description: 插入字典类型
     * @param record
     * @return
     * @return: int
     * @author: yangyuan 
     * @date: 2016年12月7日 下午3:48:39
     */
    public int insertSelective(Dictionary record);
    
    /**
     * 
     * @Title: selectByPrimaryKey 
     * @Description: 根据ID查询字典类型
     * @param map
     * @return
     * @return: Dictionary
     * @author: yangyuan 
     * @date: 2016年12月7日 下午3:49:11
     */
    public  Dictionary selectByPrimaryKey(Map<String, Object> map);
   
    /**
     * 
     * @Title: updateByPrimaryKeySelective 
     * @Description: 更新字典类型
     * @param record
     * @return
     * @return: int
     * @author: yangyuan 
     * @date: 2016年12月7日 下午3:49:48
     */
    public int updateByPrimaryKeySelective(Dictionary record);
    
    /**
     * 
     * @Title: selectAll 
     * @Description: 分页查询字典类型
     * @param pageInfo
     * @return
     * @return: List<Dictionary>
     * @author: yangyuan 
     * @date: 2016年12月7日 下午3:49:58
     */
    public List<Dictionary> selectAll(PageInfo<Dictionary> pageInfo);
    
    /**
     * 
     * @Title: count 
     * @Description: 查询字典类型总条数
     * @param Dictionary
     * @return
     * @return: int
     * @author: yangyuan 
     * @date: 2016年12月7日 下午3:50:11
     */
    public int count(Dictionary Dictionary);
    
    /**
     * 根据type查询字典唯一性
     */
    public Dictionary selectByType(Dictionary record);
    
    /**
     * 根据keyName查询字典唯一性
     */
    public Dictionary selectByName(Dictionary record);
    
    /**
     * 查询所有
     * @param record
     * @return
     */
    public List<Dictionary> list(Dictionary record);
    
    /**
     * 根据Type查询是否是系统字典
     */
    public int selectIsSysByType(String type);
    
}